package de.riceman.simpleGo.events;

import org.springframework.richclient.application.event.LifecycleApplicationEvent;

/**
 * 
 * 
 * @author Mario Reissmann
 *
 */
public class SimpleGoLifecycleApplicationEvent extends LifecycleApplicationEvent {

	/**
	 * Extension of LifecycleApplicationEvent to add some application specific event types.
	 * It's used for any kind of event in the game, maybe this should be subdivided into
	 * different event classes some day.
	 * 
	 */
	private static final long serialVersionUID = -4139240091193470156L;

	public static final String INITIALIZED = "lifecycleEvent.initialized";
	public static final String PASSED = "lifecycleEvent.passed";
	public static final String MOVED = "lifecycleEvent.moved";
	public static final String ILLEGALMOVE = "lifecycleEvent.illegalmove";
	public static final String FINISHED = "lifecycleEvent.quit";
	public static final String CONTINUE = "lifecycleEvent.continue";
	public static final String MOVE_VIA_GUI = "lifecycleEvent.move_via_gui";
	public static final String MOVE_EXPECTED = "lifecycleEvent.move_expected";
	public static final String MOVE_GENERATED = "lifecycleEvent.move_generated";
	public static final String MOVE_VIA_CLI = "lifecycleEvent.move_via_cli";
	public static final String AI_THINKS_OUT_LOUD = "lifecycleEvent.ai_thinks_out_loud";
	
	
	public SimpleGoLifecycleApplicationEvent(String eventType, Object source) {
		super(eventType, source);
	}
}
